package com.huabo.contract.service;

import com.hbfk.entity.TblAttachment;
import com.hbfk.util.PageInfo;
import com.huabo.contract.oracle.entity.TblContractPlannode;
import com.huabo.contract.oracle.entity.TblCyhwUnit;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface TblContractPlannodeService {
    void findPlanNodeListForCollection(PageInfo<TblContractPlannode> pageInfo, TblContractPlannode node);



    void findPlanNodeListForPayment(PageInfo<TblContractPlannode> pageInfo, TblContractPlannode node);


    Map<String, Object> saveContractPlannode(TblContractPlannode node, Integer contractId,Integer jbunitid, Integer jbstaffid);

    Map<String, Object> removeContractPlannode(Integer nodeId);

    Map<String, Object> sendTipEmail(TblCyhwUnit tcu, String content, String date, String token, String staffId) throws Exception;

    Map<String, Object> findWorkableContractNodeByPageInfo(Integer contractId, Integer pageNumber, Integer pageSize, String token,TblContractPlannode node);

    Map<String, Object> modifyPlanNodeStatus(Integer nodeId, Integer planStatus, String feedback);


    Map<String, Object> selectById(Integer nodeId);

    TblContractPlannode findWriteContractPlanNode(Integer planId);


    List<TblAttachment> findeWriteContractPlanFileInfo(Integer planId);

    void saveContractPlannodeTcp(TblContractPlannode tcp);

    void updateTcp(TblContractPlannode tcp);

    Map<String, Object> findPlannodeListById(Integer contractId);

    TblContractPlannode findPlannodeById(BigDecimal nodeid);
    
    Map<String, Object> findPlannodeListByContractId(Integer contractId);
}
